package com.example.service;

import java.util.List;
import java.util.Set;

/**
 * 文档审批服务接口
 */
public interface DocumentApprovalService {
    
    /**
     * 启动文档审批流程
     * @param documentId 文档ID
     * @param submitter 提交人
     * @param approverGroups 审批组集合
     * @return 流程实例ID
     */
    String startApprovalProcess(String documentId, String submitter, Set<String> approverGroups);
    
    /**
     * 完成审批任务
     * @param taskId 任务ID
     * @param approver 审批人
     * @param approved 是否通过
     * @param comment 审批意见
     */
    void completeTask(String taskId, String approver, boolean approved, String comment);
    
    /**
     * 取消审批流程
     * @param processInstanceId 流程实例ID
     * @param reason 取消原因
     */
    void cancelProcess(String processInstanceId, String reason);
}